\hypertarget{hashtbl_8h}{
\section{Referencia del Archivo /Users/nicolunacba/Development/Dinic/trunk/network/hashtbl.h}
\label{hashtbl_8h}\index{/Users/nicolunacba/Development/Dinic/trunk/network/hashtbl.h@{/Users/nicolunacba/Development/Dinic/trunk/network/hashtbl.h}}
}
{\ttfamily \#include $<$stdlib.h$>$}\par
\subsection*{Estructuras de datos}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structhashnode__s}{hashnode\_\-s}
\item 
struct \hyperlink{structhashtbl}{hashtbl}
\end{DoxyCompactItemize}
\subsection*{'typedefs'}
\begin{DoxyCompactItemize}
\item 
typedef size\_\-t \hyperlink{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}{hash\_\-size}
\item 
typedef struct \hyperlink{structhashtbl}{hashtbl} \hyperlink{hashtbl_8h_a2d56212ef7b0fa938889e49a688e46ab}{HASHTBL}
\end{DoxyCompactItemize}
\subsection*{Funciones}
\begin{DoxyCompactItemize}
\item 
\hyperlink{structhashtbl}{HASHTBL} $\ast$ \hyperlink{hashtbl_8h_aa7e342f8612905f6d59e444d82b52954}{hashtbl\_\-create} (\hyperlink{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}{hash\_\-size} size, \hyperlink{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}{hash\_\-size}($\ast$hashfunc)(const char $\ast$))
\item 
void \hyperlink{hashtbl_8h_a4c57259cd505c293809adf10fa98cd7a}{hashtbl\_\-destroy} (\hyperlink{structhashtbl}{HASHTBL} $\ast$\hyperlink{structhashtbl}{hashtbl})
\item 
int \hyperlink{hashtbl_8h_a6b2853739dee3d59dcca062d62ac4600}{hashtbl\_\-insert} (\hyperlink{structhashtbl}{HASHTBL} $\ast$\hyperlink{structhashtbl}{hashtbl}, const char $\ast$key, void $\ast$data)
\item 
int \hyperlink{hashtbl_8h_a5e5873b1bc7ddb5cf6d279205eaf64ff}{hashtbl\_\-remove} (\hyperlink{structhashtbl}{HASHTBL} $\ast$\hyperlink{structhashtbl}{hashtbl}, const char $\ast$key)
\item 
void $\ast$ \hyperlink{hashtbl_8h_a09a188d83a55ba59116a7c301c032a68}{hashtbl\_\-get} (\hyperlink{structhashtbl}{HASHTBL} $\ast$\hyperlink{structhashtbl}{hashtbl}, const char $\ast$key)
\item 
int \hyperlink{hashtbl_8h_a460651cb9ee95096d0a37ad691b8966c}{hashtbl\_\-resize} (\hyperlink{structhashtbl}{HASHTBL} $\ast$\hyperlink{structhashtbl}{hashtbl}, \hyperlink{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}{hash\_\-size} size)
\end{DoxyCompactItemize}


\subsection{Documentación de los 'typedefs'}
\hypertarget{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}{
\index{hashtbl.h@{hashtbl.h}!hash\_\-size@{hash\_\-size}}
\index{hash\_\-size@{hash\_\-size}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hash\_\-size}]{\setlength{\rightskip}{0pt plus 5cm}typedef size\_\-t {\bf hash\_\-size}}}
\label{hashtbl_8h_a0e1e919c9c3e5da2862baf08fa7f9e28}
Tipo para el tamaño de la Hash 

Definición en la línea 33 del archivo hashtbl.h.

\hypertarget{hashtbl_8h_a2d56212ef7b0fa938889e49a688e46ab}{
\index{hashtbl.h@{hashtbl.h}!HASHTBL@{HASHTBL}}
\index{HASHTBL@{HASHTBL}!hashtbl.h@{hashtbl.h}}
\subsubsection[{HASHTBL}]{\setlength{\rightskip}{0pt plus 5cm}typedef struct {\bf hashtbl}  {\bf HASHTBL}}}
\label{hashtbl_8h_a2d56212ef7b0fa938889e49a688e46ab}
Estructura de la Hash Table 

\subsection{Documentación de las funciones}
\hypertarget{hashtbl_8h_aa7e342f8612905f6d59e444d82b52954}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-create@{hashtbl\_\-create}}
\index{hashtbl\_\-create@{hashtbl\_\-create}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-create}]{\setlength{\rightskip}{0pt plus 5cm}{\bf HASHTBL}$\ast$ hashtbl\_\-create (
\begin{DoxyParamCaption}
\item[{{\bf hash\_\-size}}]{size, }
\item[{{\bf hash\_\-size}($\ast$)(const char $\ast$)}]{hashfunc}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_aa7e342f8612905f6d59e444d82b52954}
Crea una Hash table a partir de un tamaño y una función constructora de Key 

Definición en la línea 52 del archivo hashtbl.c.



Hace referencia a hashtbl::hashfunc, hashtbl::nodes, sBFS::size y hashtbl::size.



Referenciado por network\_\-create().

\hypertarget{hashtbl_8h_a4c57259cd505c293809adf10fa98cd7a}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-destroy@{hashtbl\_\-destroy}}
\index{hashtbl\_\-destroy@{hashtbl\_\-destroy}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-destroy}]{\setlength{\rightskip}{0pt plus 5cm}void hashtbl\_\-destroy (
\begin{DoxyParamCaption}
\item[{{\bf HASHTBL} $\ast$}]{hashtbl}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_a4c57259cd505c293809adf10fa98cd7a}
Destruye la Hash table y sus Datas 

Definición en la línea 73 del archivo hashtbl.c.



Hace referencia a hashnode\_\-s::data, hashnode\_\-s::key, list\_\-destroy(), hashnode\_\-s::next, hashtbl::nodes y hashtbl::size.



Referenciado por network\_\-destroy().

\hypertarget{hashtbl_8h_a09a188d83a55ba59116a7c301c032a68}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-get@{hashtbl\_\-get}}
\index{hashtbl\_\-get@{hashtbl\_\-get}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-get}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ hashtbl\_\-get (
\begin{DoxyParamCaption}
\item[{{\bf HASHTBL} $\ast$}]{hashtbl, }
\item[{const char $\ast$}]{key}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_a09a188d83a55ba59116a7c301c032a68}
Devuelve la Data de un Key a partir del mismo 

Definición en la línea 150 del archivo hashtbl.c.



Hace referencia a hashnode\_\-s::data, hashtbl::hashfunc, hashnode\_\-s::key, hashnode\_\-s::next, hashtbl::nodes y hashtbl::size.



Referenciado por network\_\-add\_\-node(), network\_\-get\_\-capacity() y network\_\-get\_\-neighbours().

\hypertarget{hashtbl_8h_a6b2853739dee3d59dcca062d62ac4600}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-insert@{hashtbl\_\-insert}}
\index{hashtbl\_\-insert@{hashtbl\_\-insert}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-insert}]{\setlength{\rightskip}{0pt plus 5cm}int hashtbl\_\-insert (
\begin{DoxyParamCaption}
\item[{{\bf HASHTBL} $\ast$}]{hashtbl, }
\item[{const char $\ast$}]{key, }
\item[{void $\ast$}]{data}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_a6b2853739dee3d59dcca062d62ac4600}
Agrega una Key y su Data a la Hash table 

Definición en la línea 96 del archivo hashtbl.c.



Hace referencia a hashnode\_\-s::data, hashtbl::hashfunc, hashnode\_\-s::key, hashnode\_\-s::next, hashtbl::nodes y hashtbl::size.



Referenciado por hashtbl\_\-resize() y network\_\-add\_\-node().

\hypertarget{hashtbl_8h_a5e5873b1bc7ddb5cf6d279205eaf64ff}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-remove@{hashtbl\_\-remove}}
\index{hashtbl\_\-remove@{hashtbl\_\-remove}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-remove}]{\setlength{\rightskip}{0pt plus 5cm}int hashtbl\_\-remove (
\begin{DoxyParamCaption}
\item[{{\bf HASHTBL} $\ast$}]{hashtbl, }
\item[{const char $\ast$}]{key}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_a5e5873b1bc7ddb5cf6d279205eaf64ff}
Elimina un elemento de la Hash table a partir de una Key 

Definición en la línea 128 del archivo hashtbl.c.



Hace referencia a hashtbl::hashfunc, hashnode\_\-s::key, hashnode\_\-s::next, hashtbl::nodes y hashtbl::size.



Referenciado por hashtbl\_\-resize().

\hypertarget{hashtbl_8h_a460651cb9ee95096d0a37ad691b8966c}{
\index{hashtbl.h@{hashtbl.h}!hashtbl\_\-resize@{hashtbl\_\-resize}}
\index{hashtbl\_\-resize@{hashtbl\_\-resize}!hashtbl.h@{hashtbl.h}}
\subsubsection[{hashtbl\_\-resize}]{\setlength{\rightskip}{0pt plus 5cm}int hashtbl\_\-resize (
\begin{DoxyParamCaption}
\item[{{\bf HASHTBL} $\ast$}]{hashtbl, }
\item[{{\bf hash\_\-size}}]{size}
\end{DoxyParamCaption}
)}}
\label{hashtbl_8h_a460651cb9ee95096d0a37ad691b8966c}
Cambia el tamaño de la Hash table. Devuelve TRUE si se hizo correctamente 

Definición en la línea 166 del archivo hashtbl.c.



Hace referencia a hashnode\_\-s::data, hashtbl::hashfunc, hashtbl\_\-insert(), hashtbl\_\-remove(), hashnode\_\-s::key, hashnode\_\-s::next, hashtbl::nodes y hashtbl::size.



Referenciado por network\_\-add\_\-node().

